package com.example.app;

/*
    java组织结构：包名->类名->方法名
        包名就是文件夹路径
        类名也是文件名
        程序入口都是main
        同一个包下面的类不需要引用就可以访问
    javac -d 按包结构进行编译
*/

public class second {
    public static void main(String[] args){

        Main.main(new String[]{});
        Person st1 = new Student();
        st1.Person();
        st1.Run();
        Talk st2 = new Student();
        st2.stand();
        st2.talk();
        Student st3 = new Student();
        st3.Run();
        st3.Person();
        st3.stand();
        st3.talk();
    }
    abstract static class Person{
        public void Person(){
            System.out.println("创建成功");
        }
        abstract void Run();
    }
    interface Talk{
        void talk();
        static void sit(){
            System.out.println("这里是Talk接口的static方法");
        }
        default void stand(){
            System.out.println("这里是Talk接口的default方法");
        };
    }
    public static class Student extends Person implements Talk{
        public void Run(){
            System.out.println("这里是Student对Person类Run方法的重写");
        }
        public void talk(){
            System.out.println("这里是Student对Talk接口talk方法的重写");
        }
        public void stand(){
            System.out.println("这里是Student对Talk接口default方法的重写");
        }
    }



}
